!% -SD !================================================== Constant Story "DE BARON"; Constant Headline "^Een interactief verhaal, geschreven door Victor Gijsbers ^en gepubliceerd onder de GNU General Public License. ^ (Type 'copyright' of 'about' voor meer informatie.) ^Nieuwe lezers wordt aangeraden 'help' te typen.^"; Constant NO_SCORE; !Constant WITHOUT_DIRECTIONS; Replace Refers; Replace MakeMatch; Replace Identical; Replace NounDomain; Replace TryGivenObject; Include "Parser"; Include "pname.h"; Object LibraryMessages with before [; Miscellany: if(lm_n == 19) if(kleding has worn) { "In je ruige houthakkerskleding zie je er bijzonder mannelijk uit. Fikse spierbundels, een stoppelbaard en een stevige kaaklijn maken het plaatje compleet."; } else { "Slechts gekleed in je nachthemd trotseer je het duister en de koude. Je stevige spieren en ongeschoren gezicht verlenen je een bijzonder masculien uiterlijk."; }; if(lm_n == 9) "^Duisternis vult onmiddellijk de wereld."; if(lm_n == 17) "In de duisternis kan je niets zien."; if(lm_n == 30) "Zoiets zie je niet, of het is niet belangrijk om je ermee bezig te houden."; Attack: if(verhaaltracker.status < 5){ "Je kan je krachten beter sparen voor je confrontatie met de baron."; } else { "Je bent niet in de stemming om dat kapot te maken."; }; Take: if(lm_n == 2) if(verhaaltracker.status < 5) { "Alleen de baron van M@:unchhausen kan aan zichzelf trekken, en dat is niet de baron waar jij naar op zoek bent."; } else { "Je bent een baron, maar niet die van M@:unchhausen."; }; Pray: if(1 == 1){ "~Maria, heilige moeder, sta mij bij in deze nachtmerrie.~"; } else { "TODO"; }; Wake: "Zo gemakkelijk kan je aan deze duistere nachtmerrie niet ontkomen."; Think: "Beelden flitsen aan je geestesoog voorbij, maar je drukt ze weg. Je wilt niet denken."; Jump: "Je springt op en neer om je spieren los te maken. Je voelt je goed, een bonk kracht op zoek naar een mogelijkheid zich te uiten."; Strong: "Je vervloekt de kwaadaardige baron voor alles wat hij je heeft aangedaan."; WaveHands: "Je zwaait je armen op en neer om je spieren los te maken. Je voelt je goed, een bonk kracht op zoek naar een mogelijkheid zich te uiten."; Sing: "~Don Giovanni!~ hoor je jezelf zingen met een diepe, onheilspellende basstem. Inderdaad voelt het alsof elk moment een goddelijke vergelding op aarde neer kan dalen om de wellustige schurk van dit stuk de afgrond van de Hel in te sleuren."; Wait: "Er is geen tijd te verliezen."; Sleep: "Het vooruitzicht van diepe, droomloze slaap lokt, maar je moet je dochter nog redden! Bovendien slaap je liever niet op de koude grond."; ]; [ ChooseObjects obj code; if (code < 2) {if (obj has scenery) return 2; rfalse;} if (obj hasnt scenery) return 2; return 1; ]; Include "Verblib"; Include "GoNeighbour"; !=================================================== ! The Game Objects !--------------------------------------------------- ! Speciale classes Class Prop with before [; Examine: return false; Search: <>; default: print_ret "Dat hoef je in dit verhaal niet te doen."; ], has scenery; Class PropSup with before [; Examine: return false; Search: <>; default: if(noun == self){ print_ret "Je hoeft je in dit verhaal niet bezig te houden met ", (the) self, "."; } else return false; ], has supporter static; Class Furniture with before [; Take,Pull,Push,PushDir: print_ret (The) self, " is te zwaar."; ], has static; Class Deur with react_before [; Go: if(direction == self.door_dir) if (self has locked) return false; ! can't open if locked if (self has open) return false; ! nothing to do if open if (self hasnt open && self hasnt locked) {print "(", (the) self, " openend)^"; give self open;}; return false; ], has ; !--------------------------------------------------- ! Scene 1: Thuis Object mijnslaap "In je slaapkamer" with name 'slaapkamer' 'kamer', description "Het zwakke schijnsel van de maan dat door het raam naar binnen valt hult de meubels in de slaapkamer in een mantel van onwereldse schoonheid. Alleen het zachte ademen van je echtgenote in het grote ledikant doorbreekt de stilte. Naast de zware eiken kledingkast bevindt zich de deur naar de overloop. In de onverwarmde kamer is het ijzig koud.", n_to over_deur, has light male transparent; Object over_deur class Deur, with pname '.p' 'deur' '.p' 'slaapkamerdeur' '.p' 'slaapkamer' '.p' 'overloop' '.p' 'deur' 'naar' '.x' 'de' '.or' 'mijn' '.or' 'onze' 'slaapkamer' '.or' 'overloop', short_name [; if (location == mijnslaap) print "deur naar de overloop"; else print "deur naar de slaapkamer"; return true; ], description [; if (location == mijnslaap) "De nauwsluitende deur scheidt je slaapkamer van de overloop en daarmee de rest van het huis."; else "Deze deur leidt terug naar de slaapkamer."; ], found_in mijnslaap overloop, door_dir [; if (location == mijnslaap) {return n_to;} else {return s_to;}; ], door_to [; if (location == mijnslaap) return overloop; else return mijnslaap; ], has door openable ~open scenery male; Object overloop "Op de overloop" with name 'overloop' 'gang' 'boven', description [; "Somewhere"; ], s_to over_deur, n_to maartje_deur, d_to over_trap, before [; Go: if(noun == d_to) {TrapNaarTuin();}; ], has light transparent; Object maartje_deur class Deur, with pname 'deur' 'kamer' 'Maartjes' 'Maartje' 'rode' 'rood' '.p' '.x' 'rode' 'deur' 'naar' '.x' 'Maartjes' '.or' 'Maartjes' 'kamer' '.or' 'overloop', short_name [; "Somewhat"; ], description "Something.", found_in haarslaap overloop, door_dir [; if (location == haarslaap) {return s_to;} else {return n_to;}; ], door_to [; if (location == haarslaap) return overloop; else return haarslaap; ], has door openable ~open scenery male; Object over_trap "trap" with name 'trap' 'beneden' 'naar', description "De houten trap wentelt zich een inktzwarte diepte in.", found_in overloop, door_dir d_to, door_to tuin, before [; Climb, Go, Enter: TrapNaarTuin(); return true; ], has door scenery male open; [ TrapNaarTuin ; print "^^Een verhaal over hoe je afdaalt en naar de tuin loopt. TODO."; VraagToets(0,0,0); PlayerTo(tuin); return true; ]; Object haarslaap "In Maartjes kamer" with name 'maartje' 'kamer' 'slaapkamer' 'maartje^s', description "Description", s_to maartje_deur, has light transparent; Object tuin "In de tuin" with name 'tuin' 'voortuin' 'buiten' 'beneden', description "De voortuin, waarin een bijl gepakt kan worden, en de overgang naar de volgende scene plaatsvindt.", has light transparent male; !=================================================== ! Entry point routines [ Initialise; location = mijnslaap; return true; ]; !=================================================== !Standard and extended grammar Include "GrammarD";